"""
@Project ：python
@File    ：01-JSON数据格式.py
@IDE     ：PyCharm
@Author  ：DongCha
@Date    ：2024/4/7 007 14:12
"""

# 什么是 JSON
# 一种轻量级的数据交互格式，可以按照 JSON 指定的格式去组织和封装数据
# 本质上是一个具有特定格式的字符串

# 主要功能
# 就是一种在各个程序语言中流通的数据格式，负责不同程序语言中的数据传递和交互

# 数据格式：
# {"name": "admin", "age": 18}

# 也可以是：
# [{"name": "张三", "age": 18}, {"name": "李四", "age": 19}, {"name": "王五", "age": 20}]

# python 数据和 JSON 相互转换
# 导入 JSON 模块
import json

# 准备符合 JSON 格式的 python 数据
data = [{"name": "张三", "age": 18}, {"name": "admin", "age": 19}, {"name": "王五", "age": 20}]
print(data)

# 通过 json.dumps(data) 方法将 python 数据转化为 JSON 数据，中文会被转为 Unicode 编码，使用 ensure_ascii=False 参数解决
# ensure_ascii=False 表示：不使用 ascii码 转换字符，不使用此参数的情况下在转换过程中，中文会被转换为 Unicode 字符
data = json.dumps(data, ensure_ascii=False)
print(data)

# 通过 json.loads(data) 方法将 JSON 数据转化为 python 数据
data = json.loads(data)
print(data)
